Field of the Invention
Embodiments generally relate to video streaming services and, more particularly, to broadcast streaming services that provide a customized video stream based on user-specific preferences.
Description of the Related Art
As the bandwidth of personal network connections continues to increase, many content providers are providing online streaming video services for viewing their content. For example, many services offer on-demand streaming of video content (e.g., movies, television show episodes, etc.). Additionally, other services offer online streaming services for broadcast video services (e.g., digital broadcast television channel streams). Generally, as used herein, a digital broadcast television stream refers to a digitally encoded video stream consisting of a number of different television shows and suitable for transmission over a computer network, e.g., the Internet. Such a stream can include television shows, as well as additional video content such as commercials, and generally mirrors the content of a television network transmitted over a traditional television system (e.g., an analog television system using Phase Alternating Line (PAL) encoding, a digital television system conforming to Advanced Television Systems Committee (ATSC) standards, etc.). A digital broadcast television stream may be continuous, in that the stream includes video content for each moment throughout the day.
Online video streaming provides users with rich opportunities to upload, watch and share videos in fast-growing online communities. Users can share videos by electronically mailing links or embedding links on web pages such as online blogs. Users can also rate and comment on videos, bringing new social aspects to viewing.
Generally, video streams have various quality levels, e.g., low, medium and high. Video quality is one characteristic of a video passed through a video processing/transmission system and is often measured by the perceived degradation compared to the original video stream. Generally, transmitting a high quality video stream generally requires a high bitrate, high resolution and high requirement for network bandwidth. While lower resolution video streams can be transmitted across lower bandwidth network connections, such video streams are generally lower in quality and thus are less preferable relative to higher quality video streams.
Generally, when a networked client device streams video content from a server, the server must send an adequate amount of packets to the networked client to ensure a smooth viewing experience (e.g., video playback without any stutters). Based on the client device's available bandwidth, the server can calculate an adequate bit rate to stream video without interruptions. For instance, the server could provide an interface through which the user can select a bit rate, based upon user knowledge of the client device available bandwidth. One drawback to this approach, however, is that the user must be sophisticated enough to choose the optimal bit rate in order to stream video without interruptions. Moreover, users may frequently select a bit rate that is too high for their current network bandwidth, due to a user preference for higher quality video content. Another approach is for streaming servers to dynamically select the streaming bit rate depending on current network conditions. Additionally, some content servers may use an adaptive bit rate, where the bit rate is adjusted as the video stream is being delivered according to changes in the available bandwidth of the client device. For example, some content servers are capable of adjusting the adaptive bit rate to account for bandwidth fluctuations or changes, e.g., on a per-chunk of video data basis.